package org.study.swing.study01.component;

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

/**
 * 作用描述
 * 参考 https://blog.csdn.net/weixin_74141222/article/details/134828362
 *
 * @author doveylovey
 * @version v1.0.0
 * @email 1135782208@qq.com
 * @date 2024年11月13日
 */
public class CheckBoxDemo1 extends JFrame {
    public static void main(String[] args) {
        new CheckBoxDemo1();
    }

    public CheckBoxDemo1() {
        super.setTitle("示例：复选框");

        // 获取容器
        Container container = super.getContentPane();
        // 设置布局方式
        container.setLayout(new FlowLayout());
        // 创建三个复选框对象
        JCheckBox checkBox1 = new JCheckBox("复选框1");
        JCheckBox checkBox2 = new JCheckBox("复选框2");
        JCheckBox checkBox3 = new JCheckBox("复选框3");
        container.add(checkBox1);
        container.add(checkBox2);
        container.add(checkBox3);
        // 确定第一个选项被选
        checkBox2.setSelected(true);
        // 创建一个按钮对象，并设置好动作事件监听对象
        JButton btn = new JButton("打印");
        btn.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent actionEvent) {
                System.out.println(checkBox1.getText() + "，选中状态：" + checkBox1.isSelected());
                System.out.println(checkBox2.getText() + "，选中状态：" + checkBox2.isSelected());
                System.out.println(checkBox3.getText() + "，选中状态：" + checkBox3.isSelected());
            }
        });
        container.add(btn);

        super.setSize(600, 400);
        // 将窗口居中显示在屏幕上
        super.setLocationRelativeTo(null);
        super.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        super.setVisible(true);
    }
}
